@echo off
echo ===== 第二课堂管理系统启动脚本（带修复功能）=====
echo 正在准备启动系统...

echo 步骤1: 清理项目...
call mvn clean
echo 清理完成！

echo 步骤2: 编译项目...
call mvn package -DskipTests
echo 编译完成！

echo 步骤3: 删除重复的Mapper XML文件...
if exist ".\scms-admin\target\classes\mapper\secondclass\" (
    echo 正在删除重复的Mapper XML文件...
    del /Q ".\scms-admin\target\classes\mapper\secondclass\*.xml"
    echo 删除完成！
) else (
    echo 目录不存在，无需删除。
)

echo 步骤4: 修复菜单父ID为空的问题...
echo 创建SQL修复脚本...
echo -- 修复菜单父ID为空的问题 > fix_menu_temp.sql
echo -- 这个脚本会将所有父ID为NULL的菜单的父ID设置为0（表示根菜单） >> fix_menu_temp.sql
echo. >> fix_menu_temp.sql
echo -- 更新父ID为NULL的菜单，将其父ID设置为0 >> fix_menu_temp.sql
echo UPDATE sys_menu SET parent_id = 0 WHERE parent_id IS NULL; >> fix_menu_temp.sql

echo 尝试执行SQL修复脚本...
mysql -u root -p123456 scms < fix_menu_temp.sql
if %ERRORLEVEL% NEQ 0 (
    echo 无法自动执行修复脚本，请手动执行以下SQL语句：
    echo UPDATE sys_menu SET parent_id = 0 WHERE parent_id IS NULL;
    echo 或者在系统启动后，访问http://localhost:8089/system/menu/fix/parent-id接口进行修复。
)

echo 删除临时SQL文件...
del fix_menu_temp.sql

echo 步骤5: 启动系统...
echo 系统正在启动，请稍候...
cd scms-admin
java -jar target\scms-admin.jar

pause 